package com.sondon.mayi.util;

import android.content.Context;

/**
 * @Project : Fruit
 * @Package : com.sondon.mayi.util
 * @Class : DensityUtil
 * @Author : 蔡文锋
 * @DateTime：2015年6月16日 下午7:59:48
 * @Blog：http://blog.csdn.net/caiwenfeng_for_23
 * @Description : { 屏幕尺寸工具 }
 *
 */

public class DensityUtil {

	/**
	 * 
	* @Author 蔡文锋
	* @Data_Time 2015年6月16日  下午8:00:37
	* @Description {  根据手机的分辨率从 dp 的单位 转成为 px(像素) }
	 * @param context
	 * @param dpValue
	 * @return
	 */
	public static int dip2px(Context context, float dpValue) {
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (dpValue * scale + 0.5f);
	}

	/**
	 * 
	* @Author 蔡文锋
	* @Data_Time 2015年6月16日  下午8:00:45
	* @Description { 根据手机的分辨率从 px(像素) 的单位 转成为 dp  }
	 * @param context
	 * @param pxValue
	 * @return
	 */
	public static int px2dip(Context context, float pxValue) {
		final float scale = context.getResources().getDisplayMetrics().density;
		return (int) (pxValue / scale + 0.5f);
	}
	
    /**
     * 将px值转换为sp值，保证文字大小不变
     * 
     * @param pxValue
     * @param fontScale
     *            （DisplayMetrics类中属性scaledDensity）
     * @return
     */ 
    public static int px2sp(Context context, float pxValue) { 
        final float fontScale = context.getResources().getDisplayMetrics().scaledDensity; 
        return (int) (pxValue / fontScale + 0.5f); 
    } 
   
    /**
     * 将sp值转换为px值，保证文字大小不变
     * 
     * @param spValue
     * @param fontScale
     *            （DisplayMetrics类中属性scaledDensity）
     * @return
     */ 
    public static int sp2px(Context context, float spValue) { 
        final float fontScale = context.getResources().getDisplayMetrics().scaledDensity; 
        return (int) (spValue * fontScale + 0.5f); 
    }
}
